package demo1;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.CellReference;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.DateUtil;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class ExcelRead {
	public static void main(String[] args) throws IOException {
		// 创建文件
		File file = new File("C:/Users/zp/Desktop/excel原始/各业务系统用户权限表.xlsx");
		// 初始化输入流
		FileInputStream is = new FileInputStream(file);
		// 创建Excel,并指定Excel读取位置
		//Workbook wb = new HSSFWorkbook(is);
		Workbook wb = new XSSFWorkbook(is);
		// 根据Workbook得到第0个下标的工作薄
		Sheet sheet1 = wb.getSheetAt(1);
		// 遍历工作薄中的所有行,注意该foreach只有Java5或者以上才支持
		
		String EBS;
		String OPMS;
		String WMS;
		String WMS_OMS;
		String ZZS;
		String DS;
		for (Row row : sheet1) {
			String str = "";
			// 遍历行中的所有单元格 Java5+ 才能使用

			// Cell ebs = row.getCell(5);

			Cell cell1 = row.getCell(0);
			Cell cell2 = row.getCell(1);
			Cell cell3 = row.getCell(2);
			Cell cell4 = row.getCell(3);
			Cell cell5 = row.getCell(4);
			Cell cell6 = row.getCell(5);
			Cell cell7 = row.getCell(6);
			Cell cell8 = row.getCell(7);
			Cell cell9 = row.getCell(8);
			Cell cell10 = row.getCell(9);
			Cell cell11 = row.getCell(10);
			// switch (cell6.getCellType()) {
			//
			// case Cell.CELL_TYPE_STRING:// String类型单元格
			// cellValue = cell6.getRichStringCellValue().getString();
			//
			// break;
			// default:
			// cellValue = "";
			// // str += "," + cell.getRichStringCellValue().getString();
			// break;
			// }
			if (cell6 == null) {
				EBS = "";
			} else {
				EBS = cell6.getRichStringCellValue().getString();
				String[] as = EBS.split(",");
				for (int i = 0; i < as.length; i++) {
					System.out.println(as[i]);
				}
				// System.out.println(cellValue);
			}
			if (cell7 == null) {
				OPMS = "";
			} else {
				OPMS = cell7.getRichStringCellValue().getString();
				String[] as = OPMS.split(",");
				for (int i = 0; i < as.length; i++) {
					System.out.println(as[i]);
				}
				// System.out.println(cellValue);
			}
			if (cell8 == null) {
				WMS = "";
			} else {
				WMS = cell8.getRichStringCellValue().getString();
				String[] as = WMS.split(",");
				for (int i = 0; i < as.length; i++) {
					System.out.println(as[i]);
				}
				// System.out.println(cellValue);
			}
			if (cell9 == null) {
				WMS_OMS = "";
			} else {
				WMS_OMS = cell9.getRichStringCellValue().getString();
				String[] as = WMS_OMS.split(",");
				for (int i = 0; i < as.length; i++) {
					System.out.println(as[i]);
				}
				// System.out.println(cellValue);
			}
			if (cell10 == null) {
				ZZS = "";
			} else {
				ZZS = cell10.getRichStringCellValue().getString();
				String[] as = ZZS.split(",");
				for (int i = 0; i < as.length; i++) {
					System.out.println(as[i]);
				}
				// System.out.println(cellValue);
			}
			if (cell11 == null) {
				DS = "";
			} else {
				DS = cell11.getRichStringCellValue().getString();
				String[] as = DS.split(",");
				for (int i = 0; i < as.length; i++) {
					System.out.println(as[i]);
				}
				// System.out.println(cellValue);
			}


		}

	}

	public static String importExcel(String file) throws IOException {
		// 创建文件
		File file1 = new File(file);
		FileInputStream is = new FileInputStream(file1);
		// 创建Excel,并指定Excel读取位置
		// Workbook wb = new HSSFWorkbook(is);
		Workbook wb = new XSSFWorkbook(is);
		// 根据Workbook得到第0个下标的工作薄
		Sheet sheet1 = wb.getSheetAt(0);
		// 遍历工作薄中的所有行,注意该foreach只有Java5或者以上才支持

		for (Row row : sheet1) {
			String str = "";
			// 遍历行中的所有单元格 Java5+ 才能使用
			for (Cell cell : row) {
				// 单元格的参照 ,根据行和列确定某一个单元格的位置
				CellReference cellRef = new CellReference(row.getRowNum(),
						cell.getColumnIndex());
				// 打印单元格的位置
				// System.out.print("打印单元格的位置"+cellRef.formatAsString());
				// 输出分隔符
				// System.out.print(" - ");
				// 得到单元格类型
				switch (cell.getCellType()) {

				case Cell.CELL_TYPE_STRING:// String类型单元格
					// 输出文本
					// if("".equals(cell.getRichStringCellValue()
					// .getString())){
					// System.out.println("空的");
					//
					// }
					str += "," + cell.getRichStringCellValue().getString();

					// System.out.println(cell.getRichStringCellValue().getString());
					break;
				// case Cell.CELL_TYPE_NUMERIC:// 数字类型
				// // 检查单元格是否包含一个Date类型
				// // 仅仅只检查Excel内部的日期格式,
				// if (DateUtil.isCellDateFormatted(cell)) {
				// // 输出日期
				// System.out.println(cell.getDateCellValue());
				// } else {
				// // 输出数字
				// System.out.println(cell.getNumericCellValue());
				// }
				// break;
				// case Cell.CELL_TYPE_BOOLEAN:// Boolean类型
				// System.out.println(cell.getBooleanCellValue());
				// break;
				// case Cell.CELL_TYPE_FORMULA:// 公式
				// // 输出公式
				// System.out.println(cell.getCellFormula());
				// break;
				// default:
				// System.out.println("");
				}

			}
			// System.out.println(row.getRowNum() +"  "+str);
			return str;
		}
		return null;

	}

}
